package com.miplus.ccrm.core.service.aicall;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.github.yulichang.base.MPJBaseService;
import com.miplus.ccrm.common.CmdResVo;
import com.miplus.ccrm.common.JSysUser;
import com.miplus.ccrm.core.controller.vo.aicall.*;
import com.miplus.ccrm.core.controller.vo.aiqm.QmViewResVo;
import com.miplus.ccrm.core.controller.vo.ficase.ImpDelReqVo;
import com.miplus.ccrm.core.controller.vo.ficase.ImpResultVo;
import com.miplus.ccrm.core.controller.vo.iou.ICaseReqVo;
import com.miplus.ccrm.core.controller.vo.strategy.PreViewTrigReqVo;
import com.miplus.ccrm.core.pojo.ObCallCase;

import javax.servlet.http.HttpServletResponse;

/**
* @author pc
* @description 针对表【OB_CALL_CASE(AI外呼表)】的数据库操作Service
* @createDate 2024-10-30 17:53:19
*/
public interface ObCallCaseService extends MPJBaseService<ObCallCase> {
    IPage<ObCallListResVo> dialList(ObCallListReqVo paras);

    CmdResVo expDialList(JSysUser user, ObCallListReqVo paras, HttpServletResponse response);

    CmdResVo updateDataStatus(UpDataStatusReqVo statusReqVo);

    IPage<ImpObCaseResVo> quyImpObHist(PreViewTrigReqVo paras);

    IPage<ImpObCaseResVo> preViewQmData(String triggerid, Integer pagenum, Integer pagesize);

    ImpResultVo impObCase(String $usrid,ImpObCallReqVo paras);

    ImpResultVo impObCase(String $usrid,String clid,String triggerid,String batchdsc,String imptype);

    IPage<TotalRepResVo> repJobTotal(TotalRepReqVo paras);

    IPage<BatchRepResVo> repJobBatch(BatchRepReqVo paras);

    CmdResVo updateCallStatus(UpCallStatusVo callStatusVo);

    CmdResVo expJobTotal(JSysUser user, TotalRepReqVo paras, HttpServletResponse response);

    CmdResVo expJobBatch(JSysUser user, BatchRepReqVo paras, HttpServletResponse response);

    CmdResVo dialAdmin(DialAdminCmdVo cmdVo);

    CmdResVo getDialJobStatus(String jobid);
}
